﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics.Contracts;

namespace ShredTheLog.Api
{
    public interface ITextChatUpdate
    {
    }

    public interface IRoomUserUpdate : IUserInfo
    {
        string RoomName { get; }
    }

    public interface IMessage
    {
        string FirstName { get; }
        bool IsMyMessage { get; }
        string Text { get; }
    }

    public interface IMessageEx : IMessage
    {
        IShortUserInfo User { get; }
        DateTime Time { get; }
    }

    public interface IEnterRoomUpdate : ITextChatUpdate
    {
        string RoomName { get; }
        IUserInfo[] Users { get; }
        IMessage[] Messages { get; }
    }

    public interface IAddMessageUpdate : ITextChatUpdate, IRoomUserUpdate
    {
        string Text { get; }
    }
}
